.dataset-compliance-fields {
  $compliance-suggestion-color: get-color(orange5);
  $compliance-readonly-color: get-color(red7);
  $compliance-review-required-color: get-color(blue5);
  $compliance-ok-color: get-color(green5);
  @mixin select-wrapper {
    max-width: item-spacing(9) * 2;
    display: inline-flex;
  }

  &__has-suggestions {
    color: $compliance-suggestion-color;
    margin-left: item-spacing(2);

    &__icon {
      color: $compliance-suggestion-color;
    }
  }

  &__notification-column {
    width: 5%;
  }

  &__identifier-column {
    width: 20%;
  }

  &__identifier-cell {
    text-align: right;
  }

  &__classification-column {
    width: 20%;
  }

  &__tall-cell#{&}__tall-cell {
    vertical-align: top;
  }

  &__current-value {
    display: inline-block;
    height: 0;
    padding: item-spacing(1);
    color: set-color(grey, mid);
  }

  &__form-input {
    padding: item-spacing(2 0);
    margin-top: item-spacing(2);
    opacity: 0.8;
  }

  &--readonly {
    &#{&}#{&} {
      color: get-color(slate5);
      opacity: 0.7;
      cursor: not-allowed;
    }

    &__icon {
      color: $compliance-readonly-color;
      opacity: 0.9;
    }
  }

  &--review-required {
    &__icon {
      color: $compliance-review-required-color;
    }
  }

  &--ok {
    &__icon {
      color: $compliance-ok-color;
    }
  }

  &--missing-selection {
    &#{&}#{&} {
      $invalid-color: get-color(red7, 0.6);

      background-color: $invalid-color;
      border-color: $invalid-color;
      color: get-color(white);

      &::after {
        content: '?';
        color: get-color(white);
      }
    }
  }

  &__add-field {
    &#{&} {
      font-weight: fw(normal, 4);
    }
  }

  &__rollup-toggle {
    &#{&} {
      color: get-color(slate10);
    }
  }

  &__remove-tag {
    &#{&} {
      font-weight: fw(normal, 2);
      font-size: item-spacing(6);
      background-color: transparent;
      text-align: center;
      text-decoration: none;
      vertical-align: middle;
      cursor: pointer;
      box-sizing: border-box;
      color: get-color(black, 0.7);
      border: 0;
    }
  }

  &__select-wrapper {
    @include select-wrapper;
  }

  &__identifier-select {
    $border: 1px solid get-color(black, 0.7);

    @include select-wrapper;
    position: relative;

    &:before {
      content: ' ';
      display: block;
      position: absolute;
      width: item-spacing(2);
      height: 50%;
      border-bottom: $border;
      border-left: $border;
      top: 2px;
      left: -(item-spacing(3));
    }
  }

  &__tag-options {
    display: flex;
    align-items: center;
    white-space: nowrap;
  }

  &__tag-label {
    margin: item-spacing(0 2);
    font-weight: fw(normal, 2);
    height: item-spacing(6);
    display: inline-flex;
    align-items: center;
    position: relative;

    &:before {
      content: ' ';
      display: block;
      position: absolute;
      width: 1px;
      height: 100%;
      border-left: 1px solid get-color(black, 0.3);
      top: 0;
      left: -(item-spacing(3));
    }

    & ~ & {
      margin-left: item-spacing(6);
    }
  }

  &__tag-row {
    background-color: get-color(gray0);
    font-size: item-spacing(3) * 1.083333;

    &#{&} {
      td {
        border-bottom: 0;
      }
    }
  }

  &__suggested-values {
    display: inline-flex;
    align-items: center;
  }

  &__resolution {
    color: get-color(red5);

    &--ok {
      color: $compliance-ok-color;
    }
  }

  &__suggested-value {
    width: item-spacing(9);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;

    &--no-res {
      color: $compliance-suggestion-color;
    }
  }

  &__search {
    padding: item-spacing(1);
  }

  &__id-field-wrap {
    display: flex;
    max-width: 100%;

    &__edit {
      display: flex;
    }

    &__prop {
      width: 100%;
      overflow: hidden;
    }
  }
}

.compliance-depends {
  display: none;
  opacity: 0;

  &--visible {
    opacity: 1;
    display: block;
    transition: all 0.4s ease 0.4s;
  }
}
